(function () {
    /**
     * 声明文件: commandJs, amd, Es6(Es2015)
     */
    // declare 声明语法 
    //  声明一个变量
    // let name: string;
    // // 声明一个方法, 方法里面声明的参数, 不能在变量中晋西声明,会报错的. 
    // function getName(name: string): string {
    //     return '1111';
    // };
    // 如果没有声明变量类型的数据, 将会自动声明为constant, 不让修改的. 
    var name = "1111";
    console.log(name);
    // 这和java中的包package 一样, 在同一个目录下的文件都可以被扫描到. 
    // 所以, 只要在同一个目录下的文件, 只要declare了的变量或者方法都可以被扫描到. 
    // jQuery('ssssss')
    // 这里PI的直接引用不会报错, 但是, 浏览器层面会报错. 
    // console.log(PI);
    // 新建一个猫类
    // let cat = new Cat('tom');
    // let cat:Cat = {
    //     name: 'tom',
    //     say:function (){
    //         // 这里的name需要使用this, 否则将会使用外面的this.
    //         return this.name
    //     }
    // }
    // console.log('cat.name',cat.say());
})();
